1. Field of the Invention
The present invention pertains to buses and, more particularly, to the use of tuned stubs in a SCSI bus.
2. Description of the Related Art
Computer systems typically comprise many discrete parts that communicate electronic data and control information among the various discrete parts. The communication occurs over one or more xe2x80x9cbuses.xe2x80x9d A bus is a collection of wires or traces over which the data and control information is communicated among the computer""s discrete parts. The wires are usually collected into xe2x80x9cconnectors,xe2x80x9d or female/male combinations of plugs. Whether a bus includes a collection of wires, a collection of traces, or both, depends on the nature of the discrete parts and their location in the computer system. Typically, a bus will include, at least at some level, both wires and traces. Thus, a bus is a collection of traces and/or wires, perhaps including connectors, over which multiple discrete parts of a computer system communicate by sharing signals.
For instance, the computer""s discrete parts typically include one or more printed circuit boards (xe2x80x9cPCBsxe2x80x9d) having multiple integrated circuit components and connectors mounted to them. These components are frequently referred to as xe2x80x9cdevices.xe2x80x9d Exemplary types of devices include, but are not limited to, processors (e.g., microprocessors, digital signal processors, and micro-controllers), memory devices (e.g., hard disk drives, floppy disk drives, and optical disk drives), and peripheral devices (e.g., keyboards, monitors, mice). When electrically connected to a bus, these types of devices, as well as others not listed, are all sometimes generically referred to as xe2x80x9cbus devices.xe2x80x9d A PCB with components mounted thereto is frequently referred to as a printed circuit assembly (xe2x80x9cPCAxe2x80x9d).
The components and connectors are interconnected by and communicate with each other over traces etched into the board. The boards are interconnected by plugging one or more of the boards into another board intended for this purpose. A first component on a board communicates with a second component on the same board over the traces etched onto the board. The first component communicates with a component on another board through the connectors by which the two boards are plugged into the third board intended for that purpose. Thus, both the traces on the boards and the connectors between the boards are a part of the bus.
These traces over which components communicate are xe2x80x9cbuses.xe2x80x9d Buses are usually constructed and operate in accordance with one or more xe2x80x9cstandards.xe2x80x9d Standards are usually set by groups of industry representatives and specify the physical and operational characteristics of the bus. Physical characteristics range from the number of loads (e.g., the number of bus devices) to the spacing between boards. The physical and operational characteristics of a bus interrelate highly.
One such bus standard is the Small Computer System Interface (xe2x80x9cSCSIxe2x80x9d, pronounced xe2x80x9cscuzzyxe2x80x9d). There are actually many different kinds of SCSI, each defined by a different SCSI standard. More particularly, at least the following varieties of SCSI are currently implemented: SCSI-1, SCSI-2, Wide SCSI, Fast SCSI, Fast Wide SCSI, Ultra SCSI, SCSI-3, Ultra Wide SCSI, Ultra2 SCSI, Fibre Channel, and Wide Ultra2 SCSI as well as some buses utilizing optical interconnections. Thus, in actuality, there are several SCSI standards and they are not necessarily compatible with each other, although the basic SCSI standards (SCSI-1, SCSI-2, and SCSI-3) are basically functionally compatible. On the other hand, one problem with these standards is that it is hard in many cases to draw the line between them.
Generally, SCSI began as a parallel interface standard used by Apple Macintosh computers, PCs, and many UNIX systems for attaching peripheral devices to computers. The original intent was to develop an interface providing faster data transmission rates (up to 80 megabytes per second) than the standard serial and parallel ports found on computers of the time. However, the SCSI standards proved to be enormously more useful than this original intent. One distinct advantage to the SCSI interface was that it permitted a user to attach many devices to a single SCSI port. The conventional serial and parallel ports of the time generally were limited to one device per port. SCSI consequently presented numerous advantages, and, not surprisingly many of these greatly facilitated the attachment of peripheral devices for input/output (xe2x80x9cI/Oxe2x80x9d) purposes. So, SCSI really was an I/O bus rather than simply an interface.
The various SCSI standards showed still more versatility and have been adapted to large scale computing environments, including networks, both local area networks (xe2x80x9cLANsxe2x80x9d) and wide area networks (xe2x80x9cWANsxe2x80x9d). One large scale computing application is the implementation of redundant arrays of inexpensive disks (xe2x80x9cRAIDsxe2x80x9d), which uses multiple arrays of multiple disks to improve performance and enhance reliability. A RAID is essentially a large storage device, and typically interfaces with a server or other computing device. In this circumstance, both the RAID and the other computing device may both be implemented using SCSI buses, although this is certainly not required.
As with all areas of computing technology, consumer demand continually pushes for ever increasing performance. The standards setting process is rather slow compared to technological innovation responsive to this push. Thus, existing standards frequently challenge designers charged with wresting higher performance while maintaining compatibility with the standards. For instance, signal integrity frequently becomes a greater concern at higher performance levels because there is less margin for error. One difficulty with signal integrity is the xe2x80x9csignal-to-noisexe2x80x9d ratio. If the bus includes too much traffic unrelated to the signal, i.e., xe2x80x9cnoise,xe2x80x9d the signal can become corrupted or indecipherable. A signal propagating down a SCSI bus, for example, will encounter a number of stubs, or interconnections, among a variety of boards and components. A portion of the signal is reflected each time the signal encounters such a stub, and this reflection is xe2x80x9cnoise.xe2x80x9d Thus, the more interconnections on the bus, the greater the noise and, consequently, the greater the threat to signal integrity.
The present invention is directed to resolving, or at least reducing, one or all of the problems mentioned above.
The invention comprises a tuned stub, SCSI topology. More particularly, a SCSI bus comprises a plurality of SCSI load stubs, a pair of SCSI terminators, a plurality of traces electrically connecting the SCSI load stubs between the SCSI terminators, and a plurality of tuning stubs. The tuning stubs are positioned at predetermined locations on the plurality of traces and have predetermined lengths such that they are capable of filtering noise on the SCSI bus.